import request from '@/utils/request'

/**
 * 获取所有角色列表
 */
export const getRoleList = (page = 1, pagesize = 5) => {
  return request({
    url: '/sys/role',
    params: {
      page,
      pagesize
    }
  })
}

/**
 * 删除角色
 */
export const delRole = (id) => {
  return request({
    method: 'delete',
    url: `/sys/role/${id}`
  })
}

/**
 * 新增角色接口函数
 * @param {*} form - {name, description}
 * @returns
 */
export const addRole = (form) => {
  return request({
    method: 'post',
    url: '/sys/role',
    data: form
  })
}

/**
 * 根据id获取角色详情
 */
export const getRoleDetail = (id) => {
  return request({
    url: `/sys/role/${id}`
  })
}

/**
 * 更新角色详情(form中需要有id以及其他信息)
 */
export const updateRole = (form) => {
  return request({
    method: 'put',
    url: `/sys/role/${form.id}`,
    data: form
  })
}

/**
 * 根据公司的id获取公司信息
 * @param {String} id - 公司id(在用户信息中)
 * @returns
 */
export const getCompanyById = (id) => {
  return request({
    method: 'get',
    url: `/company/${id}`
  })
}

/**
 * 给角色分配权限
 * @param {*} id 角色id
 * @param {*} permIds 权限id的数组
 */
export const assignPerm = (id, permIds) => {
  return request({
    method: 'put',
    url: '/sys/role/assignPrem',
    data: {
      id,
      permIds
    }
  })
}
